home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / Dave Mark / Learn C on the Mac / libs & .h files / stdio.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-05-12  |  2.7 KB  |  140 lines  |  [TEXT/KAHL]

  1.  
  2. /*
  3.  *  stdio.h
  4.  *
  5.  *  Copyright (c) 1989 Symantec Corporation.  All rights reserved.
  6.  *
  7.  */
  8.  
  9. #define _H_stdio
  10.  
  11. #ifndef NULL
  12. #define NULL        ((void *) 0)
  13. #endif
  14.  
  15. #if 0
  16. #ifndef TRUE
  17. #define TRUE 1
  18. #endif
  19. #ifndef FALSE
  20. #define FALSE 0
  21. #endif
  22. #endif
  23.  
  24. #ifndef __size_t
  25. #define __size_t
  26. typedef unsigned long size_t;
  27. #endif
  28.  
  29. typedef enum { false, true, FALSE = 0, TRUE } Boolean;
  30.  
  31. typedef unsigned long fpos_t;
  32.  
  33. typedef struct {
  34.     unsigned        std : 1;
  35.     unsigned        binary : 1;
  36.     unsigned        eof : 1;
  37.     unsigned        err : 1;
  38.     unsigned        dirty : 1;
  39.     unsigned        mybuf : 1;
  40.     unsigned        append : 1;
  41.     unsigned        delete : 1;
  42.     unsigned        pushed : 1;
  43.     char            one;
  44.     unsigned char    pushc;
  45.     short            refnum;
  46.     char            *buf;
  47.     size_t            size;
  48.     unsigned char    *ptr;
  49.     size_t            cnt;
  50.     fpos_t            pos;
  51.     fpos_t            len;
  52.     void            *window;
  53.     int                (*proc)();
  54. } FILE;
  55.  
  56. #define _IOFBF            0
  57. #define _IOLBF            1
  58. #define _IONBF            2
  59.  
  60. #define BUFSIZ            512
  61. #define EOF                (-1)
  62. #define FOPEN_MAX        15
  63.  
  64. #define FILENAME_MAX    256
  65. #define L_tmpnam        20
  66. #define TMP_MAX            9999
  67.  
  68. #define SEEK_SET        0
  69. #define SEEK_CUR        1
  70. #define SEEK_END        2
  71.  
  72. #define stdin            (&__file[0])
  73. #define stdout            (&__file[1])
  74. #define stderr            (&__file[2])
  75.  
  76. extern FILE __file[FOPEN_MAX];
  77.  
  78. int remove(char *);
  79. int rename(char *, char *);
  80. FILE *tmpfile(void);
  81. char *tmpnam(char *);
  82.  
  83. int fclose(FILE *);
  84. int fflush(FILE *);
  85. FILE *fopen(char *, char *);
  86. FILE *freopen(char *, char *, FILE *);
  87. void setbuf(FILE *, char *);
  88. int setvbuf(FILE *, char *, int, size_t);
  89.  
  90. int fprintf(FILE *, char *, ...);
  91. int fscanf(FILE *, char *, ...);
  92. int printf(char *, ...);
  93. int scanf(char *, ...);
  94. int sprintf(char *, char *, ...);
  95. int sscanf(char *, char *, ...);
  96. int vfprintf(FILE *, char *, void *);
  97. int vprintf(char *, void *);
  98. int vsprintf(char *, char *, void *);
  99. int _vscanf(char *, void *);
  100. int _vsscanf(char *, char *, void *);
  101. int _vfscanf(FILE *, char *, void *);
  102.  
  103. int fgetc(FILE *);
  104. char *fgets(char *, int, FILE *);
  105. int fputc(int, FILE *);
  106. int fputs(char *, FILE *);
  107. int getc(FILE *);
  108. int getchar(void);
  109. char *gets(char *);
  110. int putc(int, FILE *);
  111. int putchar(int);
  112. int puts(char *);
  113. int ungetc(int, FILE *);
  114.  
  115. size_t fread(void *, size_t, size_t, FILE *);
  116. size_t fwrite(void *, size_t, size_t, FILE *);
  117.  
  118. int fgetpos(FILE *, fpos_t *);
  119. int fseek(FILE *, long, int);
  120. int fsetpos(FILE *, fpos_t *);
  121. long ftell(FILE *);
  122. void rewind(FILE *);
  123.  
  124. void clearerr(FILE *);
  125. int feof(FILE *);
  126. int ferror(FILE *);
  127. void perror(char *);
  128.  
  129. int __getc(FILE *);
  130. int __putc(int, FILE *);
  131.  
  132. #define getc(fp)    ((fp)->cnt-- ? (int) *(fp)->ptr++ : __getc(fp))
  133. #define getchar()    getc(stdin)
  134.  
  135. #define putc(c, fp)    ((fp)->cnt-- > 1 ? (int) (*(fp)->ptr++ = (c)) : __putc(c, fp))
  136. #define putchar(c)    putc(c, stdout)
  137.  
  138. #define ferror(fp)    ((int) (fp)->err)
  139. #define feof(fp)    ((int) (fp)->eof)
  140.